Search engine refinement method and system

ABSTRACT

Methods for displaying Web search engine results are disclosed. A method for refining search results based on selecting icons indicating which links or keywords are appropriate or not appropriate for the desired results is disclosed. A method for refining search results based on a telephone reverse-lookup of an incoming call is also disclosed. A method for refining search results based on an input document, like a resume or job application, is also disclosed.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims benefit to U.S. provisional application 60/893,644 filed on Mar. 8, 2007, for “Various” by Alejandro Backer, the disclosure of which is incorporated herein by reference in its entirety. The present application is also related to “Method and System for Displaying Links to Search Results with Corresponding Images” by Alejandro Backer et al., attorney docket no. 624103, Ser. No. ______ filed on even date herewith, which is also incorporated herein by reference in its entirety.

FIELD

The present disclosure is generally directed to network search engines, specifically, to methods for refining search engine results.

DESCRIPTION OF THE RELATED ART

The Internet is a network containing billions of files of information. Search engines have made it possible to for people, even people with little technical background, to find the information they want out of all of those files. Upon entering one or more keywords into the search engine, the search engine returns all of the files it has found that it deems relevant to the keywords. The relevance can be determined in many ways, but the most basic formula is to count the number of time the keywords appear in the text of the file. The more occurrences found, the more relevant the file could be deemed to be. Modern search engines are more sophisticated than that example, but the basic principle is the same.

Search engines can further refine their results, typically by allowing the user to enter further keywords to narrow down the results displayed by the search engine. However, this method requires the user to divine what words would best narrow down the results and is, from the user's perspective, simply re-inputting the search request.

SUMMARY

The present disclosure discloses methods for refining search results beyond typing keywords for a search engine. The methods involve taking non-textual (icons and phone numbers) and mega-textual (documents) input to provide a more user-friendly way for users to find the files (Webpages) and information for which they are looking.

A further embodiment includes presenting derived keywords (that is, keywords selected by the search engine based on a previous search result) generated by finding the most commonly occurring text in the files deemed relevant to the input keywords. Another embodiment further utilizes discrimination power to determine the relevancy of the derived keywords to the files. Another embodiment utilizes a combination of occurrence and discrimination power in order to select words that are most common among the discriminated ones. For example, commonly occurring words can be selected from among the files and the words that are also commonly found outside of the files could be eliminated from the selection (for example, the word “the” or “another”). Some embodiments use a graphical means, such as altering the font attributes of the keywords, to reflect how representative of the search results, common or discriminative, the keyword is.

A further embodiment uses a semantic engine to figure out relationships between keywords extracted (see above) so that after a user selects one or more keywords as relevant or not relevant, other keywords which are semantically or statistically related to the ones selected as relevant are highlighted (e.g. shown in green) while those that are not related to them are de-emphasized (e.g. shown in red or eliminated). This allows users to see which keywords describe a particular person or concept they are interested in, or which concepts are related.

A further embodiment includes using such derived keywords to match advertisements to a query. For example, a search for “Steve Jobs” could derive the keyword “iphone” from the result documents and then present advertisements for the iPhone™ to the user.

A further embodiment takes as input an information file containing data pertaining to a person of interest, such as a resume or job application form. A list of links is generated from the name of the person (either scanned from the form or input manually). This list is further refined by generating a list of keywords from the information file and correlating the list of keywords against the list of links in a matrix. This correlation may be performed by singular value decomposition, but other algorithms could also be used. The resulting list of links (and corresponding image files) is then displayed to the user as a report detailing Internet pages, images, and/or information specialized websites that relate to the person in the information file. One possible application would be a quick but comprehensive way for employers to perform background checks on prospective employees' Internet history.

A further embodiment includes presenting a user of the search engine with graphical user interface (GUI) controls—such as buttons, links, or checkboxes—that allow the user to designate one or more of the links, images, keywords (see above), or specialized information websites as either “relevant” or “non-relevant” (or some equivalent designation). The search engine could then alter the display to prioritize the relevant results (links, derived keywords, social network links, advertisements, etc.) and/or eliminate the non-relevant results. This is known as “refining” or “narrowing” the search results. The search engine would not only prioritize/eliminate the result that is designated, but also all other results that are related to the same topic as the designated result. One method of prioritizing the relevant results could be eliminating all but the relevant results. There are many other ways of prioritizing results, such as placing the prioritized results at the top of the list of results, highlighting the results, altering the text properties (bold, color, underline, font, size, etc.) of the prioritized results, or placing the prioritized results in a specially designated area of the page.

A further embodiment derives further keywords after the search is completed to narrow down the search results displayed to only those results that match the further keywords. Another embodiment displays the derived keywords to the user along with GUI controls as described above, allowing the user to select which derived keywords are relevant or non-relevant and altering the display to prioritize the relevant results and/or eliminate the non-relevant results based on the user's selections. This narrowing can be performed by latent semantic analysis of the matrix of the keywords selected versus the documents from the initial search results, but other algorithms could also be used, such as calculating probabilistic estimates of co-occurrences of words.

A further embodiment allows the user to select a name or description (from a list of names or descriptions of in-class objects found in the current relevant results) to narrow down (e.g. “refine”) the search results displayed to only those results that are relevant to the selected name or description, or to issue a new, related search.

A further embodiment automatically expands the results returned if the number of results is initially below a set threshold and if the search keyword was a person's name. For example, if the threshold is set to 10, the search was for “Bob Smith”, and only 8 results are found, then the system could truncate all but the first letter of the first name and continue the search for “B Smith” to automatically attempt to increase the number of results.

A further embodiment gives the user the ability to refine the results by using GUI controls for “relevant” and “non-relevant” predetermined generic data. For example, various geographical regions (countries, states, cities, etc.) could be listed with the displayed results (or on the initial search page) with a set of relevance GUI controls corresponding to each location. The user can then select which geographical locations are relevant or non-relevant to their query and the system can refine the results in the same manner as it would with keyword refinement.

A further embodiment generates automatically refined results based on pre-determined criteria. For example, the results could be automatically refined to only show links (from all over the Internet) to books authored by, or music sung/played by, or movies starring, or books written about, etc. the person being searched for.

A further embodiment enables a user to use the system to refine a search for a person (such as themselves) and save a Uniform Resource Locator code (URL) that can be placed, preferably as a link, on a webpage to allow other users to see a refined version of the search results for that person without having to refine the search themselves. As part of the refinement process, the user is allowed to complement a pre-populated page of results by contributing new information in the form of links to web results or keywords and expressions (or images or videos or sound files or other multimedia objects) and/or eliminating irrelevant links and/or changing the ranking of the links. A link to the URL containing the user-refined results could be displayed to other users entering similar search parameters.

A further embodiment is integration into a phone device or a mobile communications device or as an application running on such a device. When the user receives an incoming call or message, the system determines the sender's identity (e.g. name) either by ID data encoded in the incoming call/message or by performing a reverse phone look-up on the sender's telephone number (determined via caller-ID). If the system can determine the name of the sender, the system then automatically (by user prompting or autonomously) performs an internet search using the name and presents the results to the user on the device. Alternatively, the user can perform the search by sending a text message or an email from the mobile device containing the search parameter. The search results can be displayed on a browser if the mobile device is enabled for it, or sent to the user in SMS or MMS format.

According to a first aspect of the disclosure, a method for displaying to a user links to files on a network is disclosed, comprising: displaying an initial set of links to an initial set of files; displaying at least one icon, where each icon can be in either a selected or unselected state and, when the user clicks on said icon, said icon changes state; searching the network for at least one result file using an algorithm, wherein the algorithm includes at least one of the states of the at least one icon; and displaying data indicative of the at least one result file.

According to a second aspect of the disclosure, a method for displaying to a user links to files on a network as in the first aspect is disclosed, wherein the displaying at least one icon includes displaying the at least one icon in relation to each link of the initial set of links.

According to a third aspect of the disclosure, a method for displaying to a user links to files on a network as in the second aspect is disclosed, wherein there are two icons positioned in relation to each link, wherein a first icon represents a positive status and a second icon represents a negative status, and wherein the algorithm is adapted to prefer search results that include data indicative of files from the initial set of files whose links are in relation to a first icon in a selected state and that do not include data indicative of files from the initial set of files whose links are in relation to a second icon in a selected state.

According to a fourth aspect of the disclosure, a method for displaying to a user links to files on a network as in the third aspect is disclosed, wherein the algorithm is additionally adapted to find additional files by using keywords found in the files linked to by links from the initial set of links that are in relation to a first icon in a selected state.

According to a fifth aspect of the disclosure, a method for displaying to a user links to files on a network as in the first aspect is disclosed, wherein the algorithm is additionally adapted to only include results that match a pre-set criterion.

According to a sixth aspect of the disclosure, a method for displaying to a user links to files on a network as in the first aspect is disclosed, further comprising: displaying at least one keyword; wherein the displaying at least one icon includes displaying the at least one icon in relation to the at least one keyword.

According to a seventh aspect of the disclosure, a method for displaying to a user links to files on a network as in the sixth aspect is disclosed, wherein there are two icons positioned in relation to each link, wherein a first icon represents a positive status and a second icon represents a negative status, and wherein the algorithm is adapted to prefer search results that include keywords that are in relation to a first icon in a selected state and that do not include keywords that are in relation to a second icon in a selected state.

According to a eighth aspect of the disclosure, a method for displaying to a user links to files on a network as in the sixth aspect is disclosed, further comprising: generating a uniform resource location code for the user that, when entered into a web browser, will display the links to the at least one result file.

According to a ninth aspect of the disclosure, a method for displaying to a user links to files on a network as in the sixth aspect is disclosed, wherein the first displaying links to files includes: taking as input a telephone number; performing a reverse lookup on the telephone number to determine a name of person associated with the telephone number; and wherein said files are the result of searching the network for files containing said name.

According to a tenth aspect of the disclosure, a method for displaying to a user links to files on a network as in the ninth aspect is disclosed, wherein taking as input a telephone number includes: the user receiving a call from a telephone and determining the telephone number associated with said telephone.

According to a eleventh aspect of the disclosure, a method for displaying to a user links to files on a network as in the first aspect is disclosed, wherein the data indicative of the at least one result file are links to the at least one result file.

According to a twelfth aspect of the disclosure, a method for displaying to a user links to files on a network as in the first aspect is disclosed, wherein the data indicative of the at least one result file are images from the at least one result file.

According to a thirteenth aspect of the disclosure, a method for displaying to a user links to files on a network as in the first aspect is disclosed, wherein the third displaying includes sending a messaging service message to the user.

According to a fourteenth aspect of the disclosure, a method for displaying to a user links to files on a network as in the seventh aspect is disclosed, wherein the algorithm includes a latent semantic analysis of a matrix of the keywords which are in relation to a first icon in a selected state versus documents from an initial search result.

According to a fifteenth aspect of the disclosure, a method for displaying to a user links to files on a network is disclosed, comprising: taking as input a document containing information about a subject; determining keywords from the input; searching the network for at least one result file, where the searching is performed based on the keywords; and displaying links to the at least one result file to the user.

According to a sixteenth aspect of the disclosure, a method for displaying to a user links to files on a network as in the fifteenth aspect is disclosed, wherein the document is a resume.

According to a seventeenth aspect of the disclosure, a method for displaying to a user links to files on a network as in the fifteenth aspect is disclosed, wherein the document is a hard copy.

According to a eighteenth aspect of the disclosure, a method for displaying to a user links to files on a network- as in the fifteenth aspect is disclosed, wherein the document is a software file.

According to a nineteenth aspect of the disclosure, a method for displaying to a user links to files on a network as in the fifteenth aspect is disclosed, wherein the searching includes analyzing occurrences and discrimination power of the keywords in the at least one result file.

According to a twentieth aspect of the disclosure, a method for displaying to a user links to files on a network as in the fifteenth aspect is disclosed, wherein the displaying links includes sending a messaging service message to the user.

Methods for displaying Web search engine results are disclosed. A method for refining search results based on selecting icons indicating which links or keywords are appropriate or not appropriate for the desired results is disclosed. A method for refining search results based on a telephone reverse-lookup of an incoming call is also disclosed. A method for refining search results based on an input document, like a resume or job application, is also disclosed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a method of refining results based on icon selection.

FIG. 2 depicts a method of refining results based on telephone number reverse lookup.

FIG. 3 depicts a method of refining results based on document input.

DETAILED DESCRIPTION

FIG. 1 depicts an embodiment of a search refinement method. The user is presented with a webpage 100 which may be the result of a conventional Internet 140 search. The webpage 100 contains the results 104 of the search, which can be keywords, links to files 150, images, or the like. In the case of keywords, the keywords can be derived from files found in a previous search or a set of pre-set keywords, such as geographical locations. In relation to each of the results 104 are icons 101. There may be more than one icon 101 in relation to each result 104. For example, each result 104 might have an icon 101 indicating positive feedback 102 and an icon representing negative feedback 103. Each icon has two states: a selected state and an unselected state. When the user clicks on the icon, it changes state. After the user sets the states of the icons, the page could request 141 a new search which, via the Internet 140, is sent 143 to the search engine 130 adapted for the method. This request can be automatic or it can be user initiated from clicking on a button 105 on the webpage 100. The search engine 130 performs a search algorithm based on the states of the icons 101. For example, the algorithm can search for files 150 accessible 144 from the Internet 140 that contain data related to the results 104 that have the positive icons 102 in a selected state and that do not contain data related to the results 104 that have the negative icons 103 in a selected state.

FIG. 2 depicts an embodiment of the search refinement method involving an Internet capable mobile communications device 200. The device is capable of displaying the webpage 100 as shown in FIG. 1 by connecting 215 to the Internet 140 via a communications link 210 to a mobile communications network 205, such as a cell network, Wi-Fi network, or any similar wireless network. When the device 200 receives an incoming call, it performs a reverse lookup 225 on the call sender's telephone number to determine the caller's name via a lookup table 250 of phone numbers to names. The name could also be manually entered by the user. The name is then input 143 into the search engine 130 which returns to the device 200 a webpage 100 (or messaging service message, such as an SMS text message or multimedia messaging service (MMS) media message) that contains search results based on that name.

FIG. 3 depicts an embodiment of the search refinement method involving document 300 input. The document 300 could be a software document or it could be a hard copy document that is scanned by text-recognition software. The data found in the document 300 is input 305 to the search engine 130. In this example, the data is sent via the Internet 140 to the search engine 143, but a more direct input could also be used. The search engine 130 then uses the data from the document 300 to find files 150 connected to the Internet 140 and related to the data. The results of the search are then sent 110 be displayed 100 for the user. One example of this would be a resume (i.e. the document 300) uploaded to the search engine 130 which searches for webpage files 150 that mention the person listed in the resume 300. The extra details in the resume 300, such as address, work experience, and education, may be used to refine the results so that results related to people with the same name as the person are eliminated or given lower priority for the display (e.g. displayed lower in the list of results). The use of a resume is just one example: any document with pertinent information could be utilized, so long as the engine is adapted to read the format.

While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example, and not limitation. It will be apparent to persons skilled in the relevant art or arts that various changes in form and detail can be made therein without departing from the scope of the invention. Thus the present invention should not be limited by any of the above-described embodiments, but should be defined only in accordance with the following claims and their equivalents. 

1. A method for displaying to a user links to files on a network, comprising: displaying an initial set of links, said initial set of links linking to an initial set of files; displaying at least one icon, wherein each icon can be in either a selected or unselected state and, wherein when the user clicks on said icon, said icon changes state; searching the network for at least one result file using an algorithm, wherein the algorithm includes at least one of the states of the at least one icon; and displaying data indicative of the at least one result file.
 2. The method of claim 1, wherein the displaying at least one icon includes displaying the at least one icon in relation to each link of the initial set of links.
 3. The method of claim 2, wherein there are two icons positioned in relation to each link, wherein a first icon represents a positive status and a second icon represents a negative status, and wherein the algorithm is adapted to prefer search results that include data indicative of files from the initial set of files whose links are in relation to a first icon in a selected state and that do not include data indicative of files from the initial set of files whose links are in relation to a second icon in a selected state.
 4. The method of claim 3, wherein the algorithm is additionally adapted to find additional files by using keywords found in the files linked to by links from the initial set of links that are in relation to a first icon in a selected state.
 5. The method of claim 1, wherein the algorithm is additionally adapted to only include results that match a pre-set criterion.
 6. The method of claim 1, further comprising: displaying at least one keyword; wherein the displaying at least one icon includes displaying the at least one icon in relation to the at least one keyword.
 7. The method of claim 6, wherein there are two icons positioned in relation to each link, wherein a first icon represents a positive status and a second icon represents a negative status, and wherein the algorithm is adapted to prefer search results that include keywords that are in relation to a first icon in a selected state and that do not include keywords that are in relation to a second icon in a selected state.
 8. The method of claim 6, further comprising: generating a uniform resource location code for the user that, when entered into a web browser, will display the links to the at least one result file.
 9. The method of claim 6, wherein the first displaying links to files includes: taking as input a telephone number; performing a reverse lookup on the telephone number to determine a name of person associated with the telephone number; and wherein said files are the result of searching the network for files containing said name.
 10. The method of claim 9, wherein taking as input a telephone number includes: the user receiving a call from a telephone and determining the telephone number associated with said telephone.
 11. The method of claim 1, wherein the data indicative of the at least one result file are links to the at least one result file.
 12. The method of claim 1, wherein the data indicative of the at least one result file are images from the at least one result file.
 13. The method of claim 1, wherein the third displaying includes sending a messaging service message to the user.
 14. The method of claim 7, wherein the algorithm includes a latent semantic analysis of a matrix of the keywords which are in relation to a first icon in a selected state versus documents from an initial search result.
 15. A method for displaying to a user links to files on a network, comprising: taking as input a document containing information about a subject; determining keywords from the input; searching the network for at least one result file, where the searching is performed based on the keywords; and displaying links to the at least one result file to the user.
 16. The method of claim 15, wherein the document is a resume.
 17. The method of claim 15, wherein the document is a hard copy.
 18. The method of claim 15, wherein the document is a software file.
 19. The method of claim 15, wherein the searching includes analyzing occurrences and discrimination power of the keywords in the at least one result file.
 20. The method of claim 15, wherein the displaying links includes sending a messaging service message to the user.
 21. A method for deriving keywords for a user performing a search for files on a network, comprising: collecting keywords from the user; searching for the files on the network that are relevant to the keywords from the user; and analyzing the files to derive a further set of keywords relevant to the files on a network that are relevant to the keywords from the user.
 22. The method of claim 21, wherein the analyzing includes a latent semantic analysis of a matrix of the keywords from the user versus the files on a network that are relevant to the keywords from the user.
 23. The method of claim 21, further comprising: determining which advertisements are relevant to the further set of keywords relevant to the files and displaying said advertisements to the user. 